"""
多线程适用于io密集型 多进程使用cpu密集型
爬虫主要是网络io
"""
import time
import threading

# 使用覆写run的方式来实现多线程
class GetListHtml(threading.Thread):

    def __init__(self, url):
        super().__init__()
        self.url = url

    def run(self):
        print(f'开始获取列表页{self.url}')
        time.sleep(2)  # 模拟网络请求
        print('已经获取到列表页')

class GetDetailHtml(threading.Thread):

    def run(self):
        print('开始获取详情页')
        time.sleep(2)
        print('已经获取到详情页')

start_time = time.time()
t1 = GetListHtml('www.baidu.com')
t2 = GetDetailHtml()
t1.start()
t2.start()
t1.join()
t2.join()
print(time.time() - start_time)

